

#include <coroutine>
#include <iostream>


promise iota(int value) 
{
   std::cout << "iota\n";
   while (value) {
       co_yield value;
       --value;
   }
}

int main() {
   for (int x : iota(10)) 
   {
       std::cout << x << '\n';
   }
}